Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Афінні перетворння та анімація засобами мови Turbo Pascal 7.0

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
О
Факультет:
КН
Кафедра:
Кафедра САПР

Інформація про роботу

Рік:
2009
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Моделювання

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра САПР ЗВІТ до лабораторної роботи №2 на тему: “ Афінні перетворння та анімація засобами мови Turbo Pascal 7.0” з курсу: « Геометричне моделювання у конструюванні інженерних обєктів та систем »   Індивідуальне завдання  Виконання завдання uses Graph,Crt; const MaxShar = 1; type shar = object x,y:integer; x2,y2:integer; r:word; color:byte; dx,dy:shortint; constructor initShar(x0,y0:integer; r0:word; color0:byte; dx0,dy0:shortint;x20,y20:integer); procedure Move; procedure Show; procedure Hide; procedure CheckBorder; procedure revertXDirection; procedure revertYDirection; end; var bgColor,i:byte; x,y,dx,dy,ErrCode:integer; r:word; shars: array[1..MaxShar] of shar; sh:shar; Procedure shar.Move; begin x:=x+dx; y:=y+dy; end; procedure shar.Show; begin setColor(15); circle(x,y,r); line(x2,y2,x,y); end; procedure shar.Hide; begin setColor(0); circle(x,y,r); line(x2,y2,x,y); end; procedure shar.revertXDirection; begin dx:=-dx; x:=x+dx; end; procedure shar.revertYDirection; begin dy:=-dy; y:=y+dy; end; constructor shar.initShar(x0, y0 :integer; r0 :word; color0 :byte; dx0, dy0 :shortint;x20,y20:integer); begin x:=x0; y:=y0; x2:=x20; y2:=y20; r:=r0; color:=color0; dx:=dx0; dy:=dy0; end; procedure shar.CheckBorder; begin if (r+x>GetMaxX-1) or (x-r<=1) then revertXDirection; if (y+r>GetMaxY-1) or (y-r<=1) then revertYDirection; end; function initializeGraph:integer; var Driver : Integer; Regim : Integer; begin Driver:=Detect; InitGraph(Driver, Regim, 'c:\BP\BGI\'); initializeGraph:=GraphResult; end; begin ErrCode:=initializeGraph; if ErrCode <> grOk then WriteLn('ERROR!', GraphErrorMsg(ErrCode)) else begin bgColor:=0; for i:=1 to MaxShar do begin r:=20; shars[i].initShar(1+r+random(GetMaxX-2*r),1+r+random(GetMaxY-2*r),r,1,random(15)-7,random(12)-6,310,210); end; repeat for i:=1 to MaxShar do shars[i].Show; Delay(3000); for i:=1 to MaxShar do shars[i].Hide; for i:=1 to MaxShar do begin shars[i].Move; shars[i].CheckBorder; end; for i:=1 to MaxShar do until keyPressed; for i:=1 to 20 do begin shars[1].Show; readln; shars[1].Hide; shars[1].Move; shars[1].CheckBorder; keyPressed; end; CloseGraph; end end.  Висновки: на даній лабораторній роботі я ознайомився із методами афінних меретворень, а також реалізації анімації за допомогою мов програмування. Закріпив свої знання виконанням індивідуального завдання- реалізація анімації.
Антиботан аватар за замовчуванням

02.10.2020 20:10

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини